package cn.dkk.create_design.singleton.lazy.staticInnerClass;

/**
 * 静态内部类
 * 保证懒加载(内部内是被使用时才会加载)以及指令重排序的有序性
 * 同时直接创建对象保证线程安全
 * 这是目前业界比较流行的单例模式实现
 */
public class LazySingleton {

    private LazySingleton(){

    }

    private static class Singleton{

        private static final LazySingleton SINGLETON=new LazySingleton();

    }

    public static LazySingleton getInstance(){
        return Singleton.SINGLETON;
    }

}
